#!/usr/bin/env python3
# -*- coding: utf-8 -*-
__author__ = '汤小洋'

'''
匿名函数：没有名字的函数，使用lambda关键字
语法：lambda 参数1,参数2:表达式

其中表示式表示函数的返回值
'''

nums = [4, 1, -8, 5, -3, 2, 7, 6]

# def fn(x):
#     return x * 2 + 1


# new_nums = list(map(fn, nums))
new_nums = list(map(lambda x: x * 2 + 1, nums))
print(new_nums)

new_nums = list(map(lambda x: (x - 1) * 2, nums))
print(new_nums)

# 按出现次数排序
d = {'a': 7, 'b': 2, 'c': 12, 'd': 1, 'e': 8}
ls = list(d.items())
ls.sort(key=lambda x: x[1], reverse=True)
for k, v in ls:
    print('{}:{}'.format(k, v))



# 将匿名函数赋给变量（不建议）
fun = lambda x, y: (x + y) * 2
print(fun(2, 5))
